﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Capa_Entidad;
namespace Acceso_Datos.Clases_DAO
{
    public class clsPacienteDAO
    {
        private BDClinicaEntities ContextoDeObjs = new BDClinicaEntities();
        public bool Insertar(ADM_PACIENTE Obj)
        {
            try
            {
                ContextoDeObjs.AddObject("ADM_PACIENTE", Obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
        public bool Modificar(ADM_PACIENTE obj)
        {

            try
            {
                ContextoDeObjs.AttachTo("ADM_PACIENTE", obj);
                ContextoDeObjs.ObjectStateManager.ChangeObjectState(obj, System.Data.EntityState.Modified);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;

            }
            return true;
        }
        public bool Eliminar(ADM_PACIENTE obj)
        {
            try
            {
                ContextoDeObjs.AttachTo("ADM_PACIENTE", obj);
                ContextoDeObjs.DeleteObject(obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }

        public int UltimoNumero()
        {
            var max = 0;

            try
            {
                max = ContextoDeObjs.ADM_PACIENTE.Select(x => x.PAC_ID_PACIENTE).Max();
                return max;
            }
            catch (Exception)
            {
                return max;
            }


        }


        public List<ADM_PACIENTE> listar()
        {
            List<ADM_PACIENTE> lista = new List<ADM_PACIENTE>();
            var q = from c in ContextoDeObjs.ADM_PACIENTE
                    select c;
            lista = q.ToList();
            return lista;
        }
        public List<V_Cubo_Admision> Cubo_Admision()
        {
            List<V_Cubo_Admision> lista = new List<V_Cubo_Admision>();
            var q = from c in ContextoDeObjs.V_Cubo_Admision
                    select c;
            lista = q.ToList();
            return lista;
        }

    }
}
